package simpleFactory

import "fmt"

// Restaurant 餐厅接口- 可以实现做饭
type Restaurant interface {
	Cook()
}

// WeiJiaLiangPi 魏家凉皮实现了餐厅接口
type WeiJiaLiangPi struct {
}

func (w *WeiJiaLiangPi) Cook() {
	fmt.Println("魏家凉皮 做的凉皮")
}

// KenDeJi 肯德基实现了 餐厅接口
type KenDeJi struct {
}

func (k *KenDeJi) Cook() {
	fmt.Println("肯德基 做的炸鸡")
}

// NewRestaurant 根据不同的餐厅名称 实例化不同的餐厅对象
func NewRestaurant(name string) Restaurant {
	switch name {
	case "weijialiangpi":
		return new(WeiJiaLiangPi)
	case "kendeji":
		return new(KenDeJi)
	}
	return nil
}
